<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
</html>
<script>
   function getPerputation2(str){
    //判断str长短是否大于1，倘若小于1终止
    if(str.length ==1){
        return [str];
    }
    //建立一个空数组
    let res = [];
    //遍历一遍str的长度
    for(let i = 0; i < str.length; i++){
        //定义一下变量 截取第一个值加上除第一个值外的两个值
        let restStr = str.slice(0,i)+str.slice(i+1);
        //获取当前所执行的值
        let restArr = arguments.callee(restStr);
        
        restArr=restArr.map(x => str[i] + x);
        res = res.concat(restArr);
    }
    return res;
}

console.log(getPerputation2("abc"));

</script>